In a typical data center, a large collection of interconnected servers provides computing and/or storage capacity for execution of various applications. For example, a data center may comprise a facility that hosts applications and services for subscribers or customers of the data center. The data center may, for example, host all of the infrastructure equipment, such as networking and storage systems, redundant power supplies, and environmental controls. In most data centers, clusters of storage systems and application servers are interconnected via a high-speed network fabric provided by one or more tiers of physical network devices, such as switches and routers. More sophisticated data centers provide infrastructure spread throughout the world with subscriber support equipment located in various physical hosting facilities. In some network topologies, routers within the fabric may be layered in a multi-staged configuration that allows for various aspects of path minimization, redundancy, and efficient routing of network traffic within the fabric.
Software Defined Networking (SDN) platforms may be used in data centers, and in some cases, may use a logically centralized and physically distributed SDN controller, and a distributed forwarding plane in virtual routers that extend the network from physical routers and switches in the data center into a virtual overlay network hosted in virtualized servers. The SDN controller provides management, control, and analytics functions of a virtualized network that includes the virtual routers.
The various network devices included in the fabric typically include mechanisms, such as management interfaces, for locally or remotely configuring these devices. By interacting with the management interface of the network devices, an administrator or other user can manually perform configuration tasks to configure the devices, and the user can also manually perform operational commands on the devices to manage, collect, and/or view operational data of the devices. For example, the user may configure interface cards of the device, adjust parameters for supported network protocols, specify physical components within the device, modify routing information maintained by a router, access software modules and other resources residing on the device, and/or perform other configuration tasks. In addition, the user may also provide commands to view current operating parameters, system logs, information related to network connectivity, network activity, or other status information from the devices, as well as view and react to event information received from the devices.
In some cases, the network fabric may include multiple network devices of different types, e.g., from different vendors. Vendors often provide different protocols for managing devices. For example, different vendors of routers may offer different protocols for configuring services performed by these routers.